Device drivers are generally known, including a printer driver. Typically, printing from a computer occurs through the use of a printer driver. Upon either an application launch or during a print command load time, the application will call an instance of the printer driver and provide the user with an interface to set the desired printer driver settings. Printer driver settings may also be called printer options, print settings, driver options, printer parameters, print selections, etc. The printer driver settings specify preferences on features of the printer.
There has been a great increase in the types and varieties of peripheral devices available and connected by network to a computer. These devices include printers, scanners, keyboards, disk drives, video cameras, etc. When a new device is added, a corresponding device driver (“driver”) must exist in the computer's memory. If a device driver does not exist in the computer's memory, a new driver must be installed. Installing a new driver often involves forcing the user to make cumbersome choices using a installation Wizard GUI. One method for detecting newly added device to a network is polling, in which a periodic scanning/searching of the network for a newly added device by a computer is performed. However, the problem with the polling method is that this causes network traffic and processor workload.
The present invention arose out of the above concerns associated with providing methods for seamlessly installing and upgrading device drivers over a network.